package com.dhcc.core.modules.system.dao;

import com.dhcc.core.framework.base.mapper.BaseMapper;
import com.dhcc.core.framework.datascope.DataScope;
import com.dhcc.core.framework.result.node.ZTreeNode;
import com.dhcc.core.modules.system.entity.Dept;
import com.dhcc.core.modules.system.vo.ExportDeptVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * DeptMapper
 *
 * @ClassName: DeptMapper
 * @Description: TODO
 * @author: cyf
 * @date: 2018年1月2日 上午10:33:18
 */
public interface DeptMapper extends BaseMapper<Dept> {

    /**
     * 获取ztree的节点列表
     *
     * @return
     * @date 2017年2月17日 下午8:28:43
     */
    List<ZTreeNode> tree();
    /**
     * 获取ztree的节点列表
     *
     * @return
     * @date 2017年2月17日 下午8:28:43
     */
    List<ZTreeNode> tree(@Param("dataScope") DataScope dataScope);

    List<Dept> list(@Param("parentId") Long parentId,@Param("condition") String condition);

    List<Dept> list(@Param("dataScope") DataScope dataScope,@Param("parentId") Long parentId,@Param("condition") String condition);

    List<Dept> listV1(@Param("code") String code);

    List<ExportDeptVo> exportDepts(@Param("condition") String condition);

    List<Map<String, Object>> locationList(@Param("hospId") String hospId);
}